foldr f z [x] = x `f` z